package cn.com.jinhao.provider.business.service;

import cn.com.jinhao.hotline.commons.vo.business.RecordInfoRequestVO;
import cn.com.jinhao.hotline.commons.vo.business.record.RecordEventCondition;
import cn.com.jinhao.provider.business.entity.RecordInfo;

import java.util.Map;

/**
 * hotline-spring-cloud
 * <p>Description: 记录事件服务类</p>
 *
 * @author ShaneMew
 * @version 1.0
 * @date 2020/1/13
 * @since 2020-01-13
 */

public interface RecordInfoService {
    /**
     * 增加记录事件
     *
     * @param recordInfoRequestVO 记录事件信息 {@link RecordInfoRequestVO}
     */
    String add(RecordInfoRequestVO recordInfoRequestVO) throws Exception;

    /**
     * 更新记录事件方法
     *
     * @param recordInfoRequestVO 事件信息   {@link RecordInfoRequestVO}
     */
    void update(RecordInfoRequestVO recordInfoRequestVO) throws Exception;

    /**
     * 根据事件编码查询事件
     *
     * @param code 事件编码
     */
    RecordInfo selectByCode(String code);

    /**
     * 通过条件查询事件列表
     * @param conditions  查询条件
     * @return map 事件集合
     */
    Map<String, Object> selectByCondition(RecordEventCondition conditions) throws Exception;
}
